fix: Sync with upstream/master (Commit b9b3605)#4
Merged
lbeckman314 merged 4 commits intomasterfrom Oct 27, 2025
Merged
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR synchronizes the codebase with upstream/master commit b9b3605, primarily focusing on refactoring upload functionality and improving code organization. The changes involve extracting common multipart upload logic into a reusable function and removing unused validation code.
- Extracted multipart upload logic into a dedicated
processMultipartUploadfunction - Removed unused
validateObjectfunction from utils - Updated command flag descriptions to clarify default bucket behavior
Reviewed Changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| gen3-client/g3cmd/utils.go | Removed unused validateObject function |
| gen3-client/g3cmd/upload.go | Refactored multipart upload logic to use new processMultipartUpload function and updated bucket flag description |
| gen3-client/g3cmd/upload-single.go | Updated bucket flag description for consistency |
| gen3-client/g3cmd/upload-multiple.go | Simplified file path processing logic, updated bucket flag description, and added new command flags |
| gen3-client/g3cmd/gitversion.go | Changed variable declarations from var to const and reset version to "N/A" |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
* Add bucket param for multipart upload * Resolve comments * Add bucket param for single file upload * add support for upload-single * Get upload-multiple + multipart working * Fix small files not working with multipart * Fix upload * chore(comment): insignificant commit to force test reruns * Refactor upload-multiple * Use file_name provided in manifest (#125) * Use file_name provided in manifest * Use file_name provided in manifest * Ensure file_name used in url * Ensure bucket passed to GeneratePresignedURL * Fix batch * fix utils * fix utils.go * cleanup+remove validateFilePath --------- Co-authored-by: Alexander VanTol <Avantol13@users.noreply.github.com> Co-authored-by: Brian <brian@bwalsh.com>
b892817 to
3cab9cb
Compare
This was
linked to
issues
Oct 27, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview 🌱
This PR reverts changes to OHSU's forked version of gen3-client in order to fix compilation issues related to the unbound furObjects variable.
This PR will make our master branch identical to that of upstream's (including the updates from uc-cdis/cdis-data-client#123 required to run multipart uploads to non-AWS S3 buckets).
Important
This PR also resolves CALYPR Issue #6 related to the misleading version message being included in the command output
Previous Behavior ❌
Compile errors:
➜ go build -o cdis-data-client # github.com/uc-cdis/gen3-client/gen3-client/g3cmd gen3-client/g3cmd/upload-multiple.go:82:30: undefined: furObjects gen3-client/g3cmd/upload-multiple.go:84:13: undefined: batchFURObjects gen3-client/g3cmd/upload-multiple.go:84:32: undefined: workers gen3-client/g3cmd/upload-multiple.go:85:32: undefined: batchFURObjects gen3-client/g3cmd/upload-multiple.go:87:34: undefined: batchFURObjects gen3-client/g3cmd/upload-multiple.go:87:51: undefined: workers gen3-client/g3cmd/upload-multiple.go:87:60: undefined: respCh gen3-client/g3cmd/upload-multiple.go:87:68: undefined: errCh gen3-client/g3cmd/upload-multiple.go:88:7: undefined: batchFURObjects gen3-client/g3cmd/upload-multiple.go:89:32: undefined: batchFURObjects gen3-client/g3cmd/upload-multiple.go:89:32: too many errorsSync 🌀
Tip
Upstream Commit b9b3605
New Behavior ✅
Successful compilation!
➜ go build -o cdis-data-client ➜ ls cdis-data-client cdis-data-client ➜ ./cdis-data-client Gen3 Client for downloading, uploading and submitting data to data commons. gen3-client version: N/A, commit: N/ATest Steps ✍️
1. Build
gen3-client2. Upload Single File via
gen3-client3. Upload Single File via calypr_admin
Next Steps 🌀